HAL UART macro migration ¶
This section provides information about the HAL UART macro migration.
Note
The following UART macros have been transitioned to inline functions, enhancing efficiency and type safety.
Related concept: Removal of hardware-related macros in HAL2
HAL UART enable/disable ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_ENABLE(__HANDLE__)
#define __HAL_UART_DISABLE(__HANDLE__)
|
__STATIC_INLINE void LL_USART_Enable(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_Disable(USART_TypeDef *p_usart)
|
HAL UART get flag/interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_GET_IT(__HANDLE__, __INTERRUPT__)
/*OR*/
#define __HAL_UART_GET_FLAG(__HANDLE__, __FLAG__)
|
__STATIC_INLINE uint32_t LL_USART_IsActiveFlag(const USART_TypeDef *p_usart, uint32_t mask)
|
General HAL UART clear flags ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_CLEAR_FLAG(__HANDLE__, __FLAG__)
/* OR */
#define __HAL_UART_CLEAR_IT(__HANDLE__, __IT_CLEAR__)
|
__STATIC_INLINE void LL_USART_ClearFlag(USART_TypeDef *p_usart, uint32_t mask)
|
Specific HAL UART clear flags ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_CLEAR_PEFLAG(__HANDLE__)
#define __HAL_UART_CLEAR_FEFLAG(__HANDLE__)
#define __HAL_UART_CLEAR_NEFLAG(__HANDLE__)
#define __HAL_UART_CLEAR_OREFLAG(__HANDLE__)
#define __HAL_UART_CLEAR_IDLEFLAG(__HANDLE__)
#define __HAL_UART_CLEAR_TXFECF(__HANDLE__)
|
__STATIC_INLINE void LL_USART_ClearFlag_PE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_FE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_NE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_ORE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_IDLE(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_ClearFlag_TXFE(USART_TypeDef *p_usart)
|
HAL UART get interrupt source ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
|
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_IDLE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXNE_RXFNE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TC(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXE_TXFNF(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_PE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_CM(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RTO(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_EOB(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXFE(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXFF(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_LBD(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_ERROR(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_CTS(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_WKUP(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TXFT(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_TCBGT(const USART_TypeDef *p_usart)
__STATIC_INLINE uint32_t LL_USART_IsEnabledIT_RXFT(const USART_TypeDef *p_usart)
|
HAL UART enable interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_ENABLE_IT(__HANDLE__, __INTERRUPT__)
|
__STATIC_INLINE void LL_USART_EnableIT_CR1(UsART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_EnableIT_CR2(UsART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_EnableIT_CR3(UsART_TypeDef *p_usart, uint32_t mask)
|
HAL UART disable interrupt ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_DISABLE_IT(__HANDLE__, __INTERRUPT__)
|
__STATIC_INLINE void LL_USART_DisableIT_CR1(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_DisableIT_CR2(USART_TypeDef *p_usart, uint32_t mask)
__STATIC_INLINE void LL_USART_DisableIT_CR3(USART_TypeDef *p_usart, uint32_t mask)
|
HAL UART flush data register ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_FLUSH_DRREGISTER(__HANDLE__)
|
__STATIC_INLINE void LL_USART_RequestRxDataFlush(USART_TypeDef *p_usart)
__STATIC_INLINE void LL_USART_RequestTxDataFlush(USART_TypeDef *p_usart)
|
HAL UART hardware control ¶
|
HAL1 |
HAL2 |
|---|---|
/* */
#define __HAL_UART_HWCONTROL_CTS_ENABLE(__HANDLE__)
#define __HAL_UART_HWCONTROL_RTS_ENABLE(__HANDLE__)
#define __HAL_UART_HWCONTROL_CTS_DISABLE(__HANDLE__)
#define __HAL_UART_HWCONTROL_RTS_DISABLE(__HANDLE__)
|
/* Use HAL_UART_SetHwFlowCtl() to manage RTS and CTS. */
/* HAL_UART_HW_CONTROL_RTS / HAL_UART_HW_CONTROL_CTS */
/* HAL_UART_HW_CONTROL_RTS_CTS / HAL_UART_HW_CONTROL_NONE */
HAL_UART_SetHwFlowCtl(const hal_uart_handle_t *huart,
hal_uart_hw_control_t hw_flow_ctl)
|
HAL UART one bit sampling ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_ONE_BIT_SAMPLE_ENABLE(__HANDLE__)
#define __HAL_UART_ONE_BIT_SAMPLE_DISABLE(__HANDLE__)
|
HAL_UART_SetOneBitSample(const hal_uart_handle_t *huart,
hal_uart_one_bit_sample_t one_bit_sample)
|
HAL UART send request ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_SEND_REQ(__HANDLE__, __REQ__)
|
HAL_UART_SendRequest(hal_uart_handle_t *huart,
hal_uart_request_t request)
|
HAL UART reset handle state ¶
|
HAL1 |
HAL2 |
|---|---|
#define __HAL_UART_RESET_HANDLE_STATE(__HANDLE__)
|
Removed ( Use
|